package com.itheima.test;

import com.itheima.pojo.User;
import org.apache.poi.xssf.eventusermodel.XSSFSheetXMLHandler;
import org.apache.poi.xssf.usermodel.XSSFComment;

/**
 * 自定义处理器
 *
 * @author mewp
 * @date 2022/12/05 14:41
 **/
public class SheetHandler implements XSSFSheetXMLHandler.SheetContentsHandler {
    private User user = null;

    /**
     * 每一行的开始
     *
     * @param i 每一个sheet的行索引
     */
    @Override
    public void startRow(int i) {
        if (i == 0) {
            user = null;
        } else {
            user = new User();
        }
    }

    /**
     * 每一行的结束
     *
     * @param i
     */
    @Override
    public void endRow(int i) {
        if (i != 0) {
            System.out.println(user);
        }
    }

    /**
     * 处理每一行的所有单元格
     *
     * @param cellName
     * @param cellValue
     * @param comment
     */
    @Override
    public void cell(String cellName, String cellValue, XSSFComment comment) {
        if (user != null) {
            //每个单元名称的首字母
            String letter = cellName.substring(0, 1);
            switch (letter) {
                case "A":
                    user.setId(Long.parseLong(cellValue));
                    break;
                case "B":
                    user.setUserName(cellValue);
                    break;
            }
        }
    }
}
